/* 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
//funcion para validar la hora ingresada
function validaHora(element){
    var value = element.value;
    var miarray = null;
    //defino la expresion regular para validar el ingreso de la hora
    //regex=/^([0-2][0-9])[:]?([0-5][0-9]?)$/;

    //match con HH:MM  H:MM  HH  H
    regex=/(^([0-9]|[0-1][0-9]|[2][0-3]):([0-5][0-9])$)|(^([0-9]|[1][0-9]|[2][0-3])$)/;

    miarray = value.match(regex);

    if (miarray == null){
        alert("La hora debe ser formato de HH:MM / H:MM / HH / H");
        element.focus();
        return false;
    }
    var hora = miarray[0];
    //alert("La hora: "+hora);
    //var minu = miarray[2];
    if ((hora.length <= 2) && (hora > 23 || hora < 8)) {
        alert("La hora debe ser de 08:00 a 23:00 hrs");
        element.focus();
        return false;
    }

    if (hora.length > 2){
        //alert("hora mayor a 2: "+hora);
        //alert("donde estan : "+hora.indexOf(":"));
        var hh = hora.substr(0,hora.indexOf(":"));
        if (hh > 23 || hh < 8) {
            alert("La hora debe ser de 08:00 a 23:00 hrs");
            element.focus();
            return false;
        }
    }
    return true;
}

function validaHoras(element1,element2){
    var value = element1.value;
    var value2 = element2.value;
    //match con HH:MM  H:MM  HH  H
    regex=/(^([0-9]|[0-1][0-9]|[2][0-3]):([0-5][0-9])$)|(^([0-9]|[1][0-9]|[2][0-3])$)/;

    var entrada = value.match(regex);
    var salida = value2.match(regex);

    var hentrada = entrada[0];
    var hsalida = salida[0];

    //alert("hora entrada"+hentrada);
    //alert("hora salida"+hsalida);

    //alert("cadena"+hentrada.substr(3,hentrada.length));

    if ((hentrada.length <= 2) && (hsalida.length <=2)) {
        if (parseFloat(hentrada) > parseFloat(hsalida)){
            return false;
        }
    }
    else if ((hentrada.length > 2) && (hsalida.length > 2)) {
        var hhe = hentrada.substr(0,hentrada.indexOf(":"));
        var hhs = hsalida.substr(0,hsalida.indexOf(":"));
        if (parseFloat(hhe) > parseFloat(hhs)) {
            return false;
        }
    }
    else if ((hentrada.length > 2) && (hsalida.length <= 2)) {
        var hhe = hentrada.substr(0,hentrada.indexOf(":"));
        if (parseFloat(hhe) > parseFloat(hsalida)) {
            return false;
        }
    }
    else if ((hentrada.length <= 2) && (hsalida.length > 2)) {
        var hhs = hsalida.substr(0,hsalida.indexOf(":"));
        if (parseFloat(hentrada) > parseFloat(hhs)) {
            return false;
        }
    }

    return true;
}

//funcion para validar la fecha ingresada
function validaFecha(value){
    hoy = new Date();
    //fechahoy = hoy.getFullYear()+'-'+hoy.getMonth()+'-'+hoy.getDay();
    re = /^(\d{4})-(\d{2})-(\d{2})$/;

    var miarray = value.match(re);
    if (miarray==null){
        alert('Debe ingresar una fecha');
        return false;
    }
    anio = miarray[1];
    mes = miarray[2];
    dia = miarray[3];

    //verifico que el año que ingresa es el actual
    if (anio > hoy.getFullYear() || anio < hoy.getFullYear()){
        alert('Año incorrecto. Verifique la fecha ingresada');
        return false;
    }
    //comparo por el mes actual
    if (mes < 1 || mes > 12){
        alert('Mes incorrecto. Verifique la fecha ingresada');
        return false;
    }
    //verifico el dia
    if(dia < 1 || dia > 31) {
        alert('Dia incorrecto. Verifique la fecha ingresada');
        return false;
    }
    if ((mes==4 || mes==6 || mes==9 || mes==11) && dia==31) {
        alert("El Mes ingresado no tiene 31 dias");
        return false;
    }
    if (mes == 2) { // chequeo año bisiesto
        var esbisiesto = (anio % 4 == 0 && (anio % 100 != 0 || anio % 400 == 0));
        if (dia > 29 || (dia==29 && !esbisiesto)) {
            alert("Fecha incorrecta. Verifique fecha ingresada");
            return false;
        }
    }
    return true;
}

